home *** CD-ROM | disk | FTP | other *** search
/ Hyper Animation Series: Viper (Limited Edition) / Hyper Animation Series: VIPER (Limited Edition).iso / pc / SYSTEM / class / EnemyAction.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-08-04  |  3.3 KB  |  90 lines

  1. abstract class EnemyAction extends StgObjectAction {
  2.    public static final int BOM_POINT = 983040;
  3.  
  4.    public EnemyAction(StgFrame var1) {
  5.       super(var1);
  6.    }
  7.  
  8.    public abstract boolean action(EnemyIndex var1);
  9.  
  10.    public abstract boolean checkHitPlayerShip(EnemyIndex var1, PlayerShipIndex var2);
  11.  
  12.    public abstract boolean checkHitPlayerShot(EnemyIndex var1, PlayerShotIndex var2);
  13.  
  14.    public abstract boolean checkHitBom(EnemyIndex var1);
  15.  
  16.    protected boolean putItem(EnemyIndex var1) {
  17.       if (Fixed.Mul(Fixed.Random(), 393216) >> 16 == 0) {
  18.          switch (Fixed.Random() >> 12) {
  19.             case 0:
  20.             case 1:
  21.             case 2:
  22.             case 3:
  23.             case 4:
  24.             case 5:
  25.             case 6:
  26.             case 7:
  27.                return this.putYellowItem(var1);
  28.             case 8:
  29.             case 9:
  30.             case 10:
  31.             case 11:
  32.                return this.putRedItem(var1);
  33.             case 12:
  34.             case 13:
  35.             case 14:
  36.                return this.putPowerItem(var1);
  37.             case 15:
  38.                return this.putBomItem(var1);
  39.          }
  40.       }
  41.  
  42.       return false;
  43.    }
  44.  
  45.    protected boolean putPowerItem(EnemyIndex var1) {
  46.       Position var2 = ((StgObjectIndex)var1).getPosition();
  47.       Position var3 = new Position(var2.getX(), var2.getY(), var2.getZ());
  48.       Item var4 = super.resource.getItem();
  49.       PowerItemIndex var5 = new PowerItemIndex(var3, StgData.getSpriteAnimePowerItem(), new Position(1048576, 1048576, 0), 0, new PowerItemNomal(super.resource));
  50.       return ((StgObject)var4).add(var5);
  51.    }
  52.  
  53.    protected boolean putBomItem(EnemyIndex var1) {
  54.       Position var2 = ((StgObjectIndex)var1).getPosition();
  55.       Position var3 = new Position(var2.getX(), var2.getY(), var2.getZ());
  56.       Item var4 = super.resource.getItem();
  57.       BomItemIndex var5 = new BomItemIndex(var3, StgData.getSpriteAnimeBomItem(), new Position(1048576, 1048576, 0), 0, new BomItemNomal(super.resource));
  58.       return ((StgObject)var4).add(var5);
  59.    }
  60.  
  61.    protected boolean putColorItem(EnemyIndex var1) {
  62.       this.putRedItem(var1);
  63.       return true;
  64.    }
  65.  
  66.    protected boolean putRedItem(EnemyIndex var1) {
  67.       Position var2 = ((StgObjectIndex)var1).getPosition();
  68.       Position var3 = new Position(var2.getX(), var2.getY(), var2.getZ());
  69.       Item var4 = super.resource.getItem();
  70.       ColorItemIndex var5 = new ColorItemIndex(var3, StgData.getSpriteAnimeRedItem(), new Position(1048576, 1048576, 0), 0, new RedItemNomal(super.resource), 20, 20);
  71.       return ((StgObject)var4).add(var5);
  72.    }
  73.  
  74.    protected boolean putBlueItem(EnemyIndex var1) {
  75.       Position var2 = ((StgObjectIndex)var1).getPosition();
  76.       Position var3 = new Position(var2.getX(), var2.getY(), var2.getZ());
  77.       Item var4 = super.resource.getItem();
  78.       ColorItemIndex var5 = new ColorItemIndex(var3, StgData.getSpriteAnimeBlueItem(), new Position(1048576, 1048576, 0), 0, new BlueItemNomal(super.resource), 20, 20);
  79.       return ((StgObject)var4).add(var5);
  80.    }
  81.  
  82.    protected boolean putYellowItem(EnemyIndex var1) {
  83.       Position var2 = ((StgObjectIndex)var1).getPosition();
  84.       Position var3 = new Position(var2.getX(), var2.getY(), var2.getZ());
  85.       Item var4 = super.resource.getItem();
  86.       ColorItemIndex var5 = new ColorItemIndex(var3, StgData.getSpriteAnimeYellowItem(), new Position(1048576, 1048576, 0), 0, new YellowItemNomal(super.resource), 20, 20);
  87.       return ((StgObject)var4).add(var5);
  88.    }
  89. }
  90.